package commons.base.rpc.example;

import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import commons.base.rpc.RpcProxyFactory;

public class Rpc2 {

	public static void main(String[] args) {
//		String json  = JSON.toJSONString(new TTT());
//		JSONObject jsonObj = JSON.parseObject(json);
//		
//		System.err.println(jsonObj.get("c").getClass().getName());
//		System.err.println(jsonObj.get("a").getClass().getName());
//		System.err.println(jsonObj.get("p").getClass().getName());
//		System.err.println(jsonObj.get("p"));
//		Enum e = (Enum)Enum.valueOf(Person.class, (String)jsonObj.get("p"));
//		System.err.println(e);
		t1();
	}
	
	public static void t1(){
		RpcProxyFactory factory = new RpcProxyFactory("http://localhost:9000/rpc");
		Hello hello = factory.getProxy(Hello.class);
//		System.err.println(hello.hello("yuan"));
//		hello.calc(1, 2);
		
		List<Integer> list = new ArrayList<Integer>();
		list.add(11);
		list.add(22);
		
		Map<String, Long> map = new HashMap<String, Long>();
		map.put("a", 33L);
		map.put("b", 44L);
		
		hello.pp(Person.WOMAN, list, map, new Date());
		
//		hello.testException();
	}

}
class TTT{
	char c = '1';
	byte a = 10;
	Person p = Person.MAN;
	
	public char getC() {
		return c;
	}

	public void setC(char c) {
		this.c = c;
	}

	public byte getA() {
		return a;
	}

	public void setA(byte a) {
		this.a = a;
	}

	public Person getP() {
		return p;
	}

	public void setP(Person p) {
		this.p = p;
	}
	
}
